package com.ruoyi.gybj.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 储罐信息对象 gybj_tank_info
 * 
 * @author ruoyi
 * @date 2025-11-19
 */
public class TankInfo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键id */
    private Long id;

    /** 储罐编码 */
    @Excel(name = "储罐编码")
    private String tankCode;

    /** 储罐名称 */
    @Excel(name = "储罐名称")
    private String tankName;

    /** 储罐类型 */
    @Excel(name = "储罐类型")
    private String tankType;

    /** 储罐描述 */
    @Excel(name = "储罐描述")
    private String tankDesc;

    /** 危险源id */
    @Excel(name = "危险源id")
    private Long hazardId;

    /** 危险源名称 */
    @Excel(name = "危险源名称")
    private String hazardName;

    /** 运行状态（如：运行/停用/检修） */
    @Excel(name = "运行状态", readConverterExp = "如=：运行/停用/检修")
    private String runStatus;

    /** 经度 */
    @Excel(name = "经度")
    private String lon;

    /** 维度 */
    @Excel(name = "维度")
    private String lat;

    /** 压力类型（如：常压/低压/高压） */
    @Excel(name = "压力类型", readConverterExp = "如=：常压/低压/高压")
    private String pressureType;

    /** 设计压力（单位：MPa） */
    @Excel(name = "设计压力", readConverterExp = "单=位：MPa")
    private String designPressure;

    /** 最高工作压力（单位：MPa） */
    @Excel(name = "最高工作压力", readConverterExp = "单=位：MPa")
    private String maxPressure;

    /** 温度类型（如：常温/低温/高温） */
    @Excel(name = "温度类型", readConverterExp = "如=：常温/低温/高温")
    private String temperatureType;

    /** 设计温度下限（单位：℃） */
    @Excel(name = "设计温度下限", readConverterExp = "单=位：℃")
    private String minTemperature;

    /** 设计温度上限（单位：℃） */
    @Excel(name = "设计温度上限", readConverterExp = "单=位：℃")
    private String maxTemperature;

    /** 存储介质（如：汽油/柴油/液化气） */
    @Excel(name = "存储介质", readConverterExp = "如=：汽油/柴油/液化气")
    private String storedMedium;

    /** 介质形态（如：液态/气态/固态） */
    @Excel(name = "介质形态", readConverterExp = "如=：液态/气态/固态")
    private String mediumShape;

    /** 储量（单位：m³） */
    @Excel(name = "储量", readConverterExp = "单=位：m³")
    private String storageVolume;

    /** 液位最高值（单位：m） */
    @Excel(name = "液位最高值", readConverterExp = "单=位：m")
    private String maxLiquidLevel;

    /** 建造日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "建造日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date makedDate;

    /** 投用日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "投用日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date usedDate;

    /** 最近检修日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "最近检修日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date latestInspectionDate;

    /** 点位ID（关联监控系统点位） */
    @Excel(name = "点位ID", readConverterExp = "关=联监控系统点位")
    private Long pointId;

    /** 删除标志（0代表存在 1代表删除） */
    private String delFlag;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }

    public void setTankCode(String tankCode) 
    {
        this.tankCode = tankCode;
    }

    public String getTankCode() 
    {
        return tankCode;
    }

    public void setTankName(String tankName) 
    {
        this.tankName = tankName;
    }

    public String getTankName() 
    {
        return tankName;
    }

    public void setTankType(String tankType) 
    {
        this.tankType = tankType;
    }

    public String getTankType() 
    {
        return tankType;
    }

    public void setTankDesc(String tankDesc) 
    {
        this.tankDesc = tankDesc;
    }

    public String getTankDesc() 
    {
        return tankDesc;
    }

    public void setHazardId(Long hazardId) 
    {
        this.hazardId = hazardId;
    }

    public Long getHazardId() 
    {
        return hazardId;
    }

    public void setHazardName(String hazardName) 
    {
        this.hazardName = hazardName;
    }

    public String getHazardName() 
    {
        return hazardName;
    }

    public void setRunStatus(String runStatus) 
    {
        this.runStatus = runStatus;
    }

    public String getRunStatus() 
    {
        return runStatus;
    }

    public void setLon(String lon) 
    {
        this.lon = lon;
    }

    public String getLon() 
    {
        return lon;
    }

    public void setLat(String lat) 
    {
        this.lat = lat;
    }

    public String getLat() 
    {
        return lat;
    }

    public void setPressureType(String pressureType) 
    {
        this.pressureType = pressureType;
    }

    public String getPressureType() 
    {
        return pressureType;
    }

    public void setDesignPressure(String designPressure) 
    {
        this.designPressure = designPressure;
    }

    public String getDesignPressure() 
    {
        return designPressure;
    }

    public void setMaxPressure(String maxPressure) 
    {
        this.maxPressure = maxPressure;
    }

    public String getMaxPressure() 
    {
        return maxPressure;
    }

    public void setTemperatureType(String temperatureType) 
    {
        this.temperatureType = temperatureType;
    }

    public String getTemperatureType() 
    {
        return temperatureType;
    }

    public void setMinTemperature(String minTemperature) 
    {
        this.minTemperature = minTemperature;
    }

    public String getMinTemperature() 
    {
        return minTemperature;
    }

    public void setMaxTemperature(String maxTemperature) 
    {
        this.maxTemperature = maxTemperature;
    }

    public String getMaxTemperature() 
    {
        return maxTemperature;
    }

    public void setStoredMedium(String storedMedium) 
    {
        this.storedMedium = storedMedium;
    }

    public String getStoredMedium() 
    {
        return storedMedium;
    }

    public void setMediumShape(String mediumShape) 
    {
        this.mediumShape = mediumShape;
    }

    public String getMediumShape() 
    {
        return mediumShape;
    }

    public void setStorageVolume(String storageVolume) 
    {
        this.storageVolume = storageVolume;
    }

    public String getStorageVolume() 
    {
        return storageVolume;
    }

    public void setMaxLiquidLevel(String maxLiquidLevel) 
    {
        this.maxLiquidLevel = maxLiquidLevel;
    }

    public String getMaxLiquidLevel() 
    {
        return maxLiquidLevel;
    }

    public void setMakedDate(Date makedDate) 
    {
        this.makedDate = makedDate;
    }

    public Date getMakedDate() 
    {
        return makedDate;
    }

    public void setUsedDate(Date usedDate) 
    {
        this.usedDate = usedDate;
    }

    public Date getUsedDate() 
    {
        return usedDate;
    }

    public void setLatestInspectionDate(Date latestInspectionDate) 
    {
        this.latestInspectionDate = latestInspectionDate;
    }

    public Date getLatestInspectionDate() 
    {
        return latestInspectionDate;
    }

    public void setPointId(Long pointId) 
    {
        this.pointId = pointId;
    }

    public Long getPointId() 
    {
        return pointId;
    }

    public void setDelFlag(String delFlag) 
    {
        this.delFlag = delFlag;
    }

    public String getDelFlag() 
    {
        return delFlag;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("tankCode", getTankCode())
            .append("tankName", getTankName())
            .append("tankType", getTankType())
            .append("tankDesc", getTankDesc())
            .append("hazardId", getHazardId())
            .append("hazardName", getHazardName())
            .append("runStatus", getRunStatus())
            .append("lon", getLon())
            .append("lat", getLat())
            .append("pressureType", getPressureType())
            .append("designPressure", getDesignPressure())
            .append("maxPressure", getMaxPressure())
            .append("temperatureType", getTemperatureType())
            .append("minTemperature", getMinTemperature())
            .append("maxTemperature", getMaxTemperature())
            .append("storedMedium", getStoredMedium())
            .append("mediumShape", getMediumShape())
            .append("storageVolume", getStorageVolume())
            .append("maxLiquidLevel", getMaxLiquidLevel())
            .append("makedDate", getMakedDate())
            .append("usedDate", getUsedDate())
            .append("latestInspectionDate", getLatestInspectionDate())
            .append("pointId", getPointId())
            .append("delFlag", getDelFlag())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
